* {
  margin: 0;
  padding: 0;
}
html,body,.app {
  width: 100%;
  height: 100%;
}
ul {
  list-style: none;
}
/* 头部 */
.top {
  width: 98%;
  height: 5%;
  display: block;
  padding-left: 2%;
  text-decoration: none;
  color: #333;
  /* 定位 */
  position: fixed;
  top: 0;
  /* 弹性 */
  display: flex;
  align-items: center;
}
/* 中间-主体 */
.main {
  width: 92%;
  height: 50%;
  padding: 5% 4%;
  position: fixed;
  top: 5%;
  display: flex;
  flex-direction: column;
}
/* 1-标题部分 */
.main .p1 {
  font-size: 14px;
  color: #999;
  font-family: '黑体';
  margin: 1% 0 10% 0;
}
/* 2-input[text]手机号和验证码 */
.main form {
  position: relative;
}
.main input[type="text"] {
  width: 100%;
  height: 20%;
  border: none;
  font-size: 16px;
  border-bottom: 1px solid #e6e6e6;
  margin-bottom: 5%;
  color: #cfcfcf;
}
.main input[type="text"]:focus {
  outline: none;
}
/* 获取验证码 */
.main .s1 {
  border: 1px solid #cfcfcf;
  border-radius: 15px;
  padding: 1% 3%;
  font-size: 14px;
  color: #cfcfcf;
  position: absolute;
  top: 27%;
  right: 0;
}
/* 3-协议 */
.main .p2 {
    width: 100%;
    height: 35%;
    padding: 3% 0;
    display: flex;
    align-items: center;
}
.main .p2 span {
  font-size: 14px;
  color: #999;
}
.main .p2 span a {
  color: #5086c2;
  text-decoration: none;
}
/* checkbox 精灵图 */
.main input[type="checkbox"] {
  width: 16px;
  height: 16px;
  /* 隐藏默认checkbox的框框 */
  appearance: none;
  background: url(../images/checkbox.png) 0 0;
}
/* 4-登录按钮 */
.main input[type="submit"] {
  width: 100%;
  height: 30%;
  background: #cacaca;
  color: #fff;
  border: none;
  border-radius: 20px;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.1em;
}

/* 底部 */
.bottom {
  width: 100%;
  height: 15%;
  position: fixed;
  bottom: 3%;
  display: flex;
  flex-direction: column;
  align-items: center;
  /* background: green; */
}
/* 上下共用 */
.bottom .b1,.bottom .b2 {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
/* 底部-上 */
.bottom .b1 {
  height: 40%;
}
/* 其他登录方式 */
.bottom .b1 h4 {
  color: #9a9a9a;
  font-weight: 600;
}
/* 底部-下 */
.bottom .b2 {
  height: 60%;
  color: #515151;
}
.bottom .b2 span {
  margin: 0 3%;
}
.bottom .b2 .icon-weixin::before,
.bottom .b2 .icon-QQ::before,
.bottom .b2 .icon-geren::before {
  font-size: 1.2rem;
  border: 1px solid #eee;
  border-radius: 50%;
  padding: 30%;
}